package com.ruoyi.workflow.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 套餐信息对象 bus_car_package_audit
 * 
 * @author xiaodu
 * @date 2023-06-30
 */
@Getter
@Setter
@TableName("bus_car_package_audit")
public class CarPackageAudit extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 服务单项id */
    private Long serviceItemId;

    /** 套餐名称 */
    private String serviceItemName;

    /** 套餐备注 */
    private String serviceItemInfo;

    /** 套餐价格 */
    private BigDecimal serviceItemPrice;

    /** 流程实例ID */
    private String instanceId;

    /** 创建者ID */
    private Long creatorId;

    /** 创建者用户名 */
    private String creatorUserName;

    /** 创建者别名 */
    private String creatorNickName;


    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 备注 */
    private String info;

    /** 审核状态 */
    private Integer status;

    public CarPackageAudit() {
    }

    public CarPackageAudit(Long serviceItemId, String serviceItemName, String serviceItemInfo, BigDecimal serviceItemPrice, Long creatorId, String creatorUserName, String creatorNickName, Date createTime, String info, Integer status) {
        this.serviceItemId = serviceItemId;
        this.serviceItemName = serviceItemName;
        this.serviceItemInfo = serviceItemInfo;
        this.serviceItemPrice = serviceItemPrice;
        this.creatorId = creatorId;
        this.creatorUserName = creatorUserName;
        this.creatorNickName = creatorNickName;
        this.createTime = createTime;
        this.info = info;
        this.status = status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("serviceItemId", getServiceItemId())
            .append("serviceItemName", getServiceItemName())
            .append("serviceItemInfo", getServiceItemInfo())
            .append("serviceItemPrice", getServiceItemPrice())
            .append("instanceId", getInstanceId())
            .append("creatorId", getCreatorId())
            .append("creatorUserName", getCreatorUserName())
            .append("creatorNickName", getCreatorNickName())
            .append("createTime",getCreateTime())
            .append("info", getInfo())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .toString();
    }
}
